#include <bits/stdc++.h>
using namespace std;

void merge(vector<pair<int, int>> &segs) {
	vector<pair<int, int>> res;
	int st = -2e9, ed = -2e9;
	sort(segs.begin(), segs.end());
	for (auto seg : segs) {
		if (ed < seg.first) {
			if (st != -2e9) {
				res.push_back({st, ed});
			}
			st = seg.first;
			ed = seg.second;
		} else {
			ed = max(ed, seg.second);
		}
	}
	if (!st) {
		res.push_back({st, ed});
	}
	segs = res;
}

int main() {
	int n;
	vector<pair<int, int>> segs;
	cin >> n;
	for (int i = 0; i < n; ++i) {
		int l, r;
		cin >> l >> r;
		segs.push_back({l, r});
	}
	merge(segs);
	cout << segs.size() << endl;
	return 0;
}